package com.dkm.orproject.dkmoa.dao;

import com.dkm.orproject.dkmoa.domain.OaClient;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;


/**
 *  @ClassName : OaClientMapper  //类名
 *  @Description : 客户类dao层操作数据库实体类
 *  @Author : zmh //作者
 *  @Date: 2020-11-16 16:28  //时间
 */
@Mapper
public interface OaClientMapper {

    /**
     * 根据Id查询删除该条客户数据
     * @param pkClientId
     * @return 回调函数
     */
    int deleteByPrimaryKey(Long pkClientId);

    /**
     * 插入客户数据
     * @param oaClient 客户对象
     */
    int insertSelective(OaClient oaClient);

    /**
     * 根据Id查询客户数据
     * @param pkClientId
     * @return 客户对象
     */
    OaClient selectByPrimaryKey(Long pkClientId);

    /**
     * 修改客户对象
     * @param oaClient 客户对象
     * @return 回调函数
     */
    int updateByPrimaryKeySelective(OaClient oaClient);

    /**
     * 客户总行数
     * @param oaClient 客户对象
     * @param startTime 起始时间
     * @param endDate 结束时间
     * @return 总行数
     */
    Long rowCount(@Param("oaClient")OaClient oaClient,@Param("startTime") String startTime,@Param("endDate") String endDate);

    /**
     * 批量删除
     * @param list id集合
     * @return 回调函数
     */
    int deleteAll(List<Long> list);

    /**
     * 分页查询
     * @param oaClient 客户对象
     * @param startTime 起始时间
     * @param endDate 结束时间
     * @return 客户对象集合
     */
    List<OaClient> selectAll(@Param("oaClient")OaClient oaClient,@Param("startTime") String startTime,@Param("endDate") String endDate);
}